package org.aspire.graphics.frame;

import java.awt.image.BufferedImage;

import org.aspire.graphics.Frame;

/******************************************************************************
 * A frame implementation for Java Standard Edition (J2SE).
 * 
 * @author JPACarabuena
 *****************************************************************************/
public class StandardFrame extends Frame {

	// ========================================================================
	// Constants
	// ========================================================================

	// ========================================================================
	// Static Methods
	// ========================================================================

	// ========================================================================
	// Fields
	// ========================================================================

	/**************************************************************************
	 * The system-dependent image for this frame.
	 *************************************************************************/
	private BufferedImage image;
	
	// ========================================================================
	// Constructors
	// ========================================================================

	// ========================================================================
	// Getters & Setters
	// ========================================================================

	// ========================================================================
	// Override Methods
	// ========================================================================

	@Override
	public int getWidth() {
		return this.image.getWidth();
	}

	@Override
	public int getHeight() {
		return this.image.getHeight();
	}

	@Override
	public Object getImage() {
		return this.image;
	}

	@Override
	public void setImage(Object image) {
		if(image instanceof BufferedImage) {
			this.image = (BufferedImage) image;
		}
	}
	
	@Override
	public void setWidth(int width) {
		// do nothing
	}

	@Override
	public void setHeight(int height) {
		// do nothing
	}

	// ========================================================================
	// Methods
	// ========================================================================

	// ========================================================================
	// Inner & Anonymous Classes
	// ========================================================================
}